diff --git a/drivers/usb/musb-new/ti-musb.c b/drivers/usb/musb-new/ti-musb.c
index b0ee57a..81b12fa 100644
--- a/drivers/usb/musb-new/ti-musb.c
+++ b/drivers/usb/musb-new/ti-musb.c
@@ -33,7 +33,7 @@
 
 static void ti_musb_set_phy_power(struct udevice *dev, u8 on)
 {
-	struct ti_musb_platdata *plat = dev_get_plat(dev);
+	struct ti_musb_plat *plat = dev_get_plat(dev);
 
 	if (!plat->ctrl_mod_base)
 		return;
@@ -79,7 +79,7 @@
 
 static int ti_musb_of_to_plat(struct udevice *dev)
 {
-	struct ti_musb_platdata *plat = dev_get_plat(dev);
+	struct ti_musb_plat *plat = dev_get_plat(dev);
 	const void *fdt = gd->fdt_blob;
 	int node = dev_of_offset(dev);
 	int phys;
@@ -147,7 +147,7 @@
 static int ti_musb_host_probe(struct udevice *dev)
 {
 	struct musb_host_data *host = dev_get_priv(dev);
-	struct ti_musb_platdata *plat = dev_get_plat(dev);
+	struct ti_musb_plat *plat = dev_get_plat(dev);
 	struct usb_bus_priv *priv = dev_get_uclass_priv(dev);
 	int ret;
 
@@ -178,7 +178,7 @@
 #if CONFIG_IS_ENABLED(OF_CONTROL)
 static int ti_musb_host_of_to_plat(struct udevice *dev)
 {
-	struct ti_musb_platdata *plat = dev_get_plat(dev);
+	struct ti_musb_plat *plat = dev_get_plat(dev);
 	const void *fdt = gd->fdt_blob;
 	int node = dev_of_offset(dev);
 	int ret;
@@ -204,7 +204,7 @@
 	.probe = ti_musb_host_probe,
 	.remove = ti_musb_host_remove,
 	.ops	= &musb_usb_ops,
-	.plat_auto	= sizeof(struct ti_musb_platdata),
+	.plat_auto	= sizeof(struct ti_musb_plat),
 	.priv_auto	= sizeof(struct musb_host_data),
 };
 
@@ -216,7 +216,7 @@
 #if CONFIG_IS_ENABLED(OF_CONTROL)
 static int ti_musb_peripheral_of_to_plat(struct udevice *dev)
 {
-	struct ti_musb_platdata *plat = dev_get_plat(dev);
+	struct ti_musb_plat *plat = dev_get_plat(dev);
 	const void *fdt = gd->fdt_blob;
 	int node = dev_of_offset(dev);
 	int ret;
@@ -244,7 +244,7 @@
 static int ti_musb_peripheral_probe(struct udevice *dev)
 {
 	struct ti_musb_peripheral *priv = dev_get_priv(dev);
-	struct ti_musb_platdata *plat = dev_get_plat(dev);
+	struct ti_musb_plat *plat = dev_get_plat(dev);
 	int ret;
 
 	priv->periph = musb_init_controller(&plat->plat,
@@ -277,7 +277,7 @@
 	.probe = ti_musb_peripheral_probe,
 	.remove = ti_musb_peripheral_remove,
 	.ops	= &musb_usb_ops,
-	.plat_auto	= sizeof(struct ti_musb_platdata),
+	.plat_auto	= sizeof(struct ti_musb_plat),
 	.priv_auto	= sizeof(struct ti_musb_peripheral),
 	.flags = DM_FLAG_PRE_RELOC,
 };
